import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;

/**
 * @author gao
 * @date 2025/8/3 21:45
 */

public class Demo2 {
    public static void main(String[] args) throws ExecutionException, InterruptedException {
        Callable<Integer> callable = new Callable<>(){
            @Override
            public Integer call() throws Exception {
                int ret = 0;
                for (int i = 1; i <= 100; i++) {
                    ret += i;
                }
                return ret;
            }
        };

        FutureTask<Integer> task = new FutureTask<Integer>(callable);
        Thread t = new Thread(task);

        t.start();
        System.out.println(task.get());
    }
}